/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package se.kth.lwr.jeat.samples.onsitetreatment.producers;

import javax.measure.quantity.Area;
import javax.measure.unit.SI;
import javax.measure.unit.Unit;
import org.jscience.physics.amount.Amount;
import se.kth.lwr.jeat.core.Inventoriable;
import se.kth.lwr.jeat.core.Inventory;
import se.kth.lwr.jeat.core.InventoryDataSource;
import se.kth.lwr.jeat.core.EnergyCategory;
import se.kth.lwr.jeat.utils.ProductionSupport;
import se.kth.lwr.jeat.samples.onsitetreatment.SimpleProduction;

/**
 *
 * @author davidev
 */
public class GeoTextileProducer extends SimpleProduction {

    private GeoTextileProducer(ProductionSupport support) {
        super(support);
    }
    
    
    
    
    public static GeoTextileProducer getInstance() {
        ProductionSupport support=new ProductionSupport("Geotextile", newInventoryDataSource, SI.SQUARE_METRE);
        return new GeoTextileProducer(support);
    }
    
    
//Data sources
    /**
     *
     * Production of geo textile
     *
     */
    public static final InventoryDataSource newInventoryDataSource = new InventoryDataSource("GeoTextileProductionEmissions",
            "Production of geo textile",
            new Inventoriable() {
                
                @Override
                public Inventory getInventory() {
                    Inventory retval = Inventory.emptyInventory();
                    retval.addEnergyUse(EnergyCategory.ELECTRICAL, Amount.valueOf(1.9, Unit.valueOf("MJ/m*m")));
                    retval.addEnergyUse(EnergyCategory.FOSSIL, Amount.valueOf(0.43, Unit.valueOf("MJ/m*m")));
                    return retval;
                }
            });
}
